package cn.edu.zafu.bigdata.x.cxy;

// 自定义异常类InvalidScoreException的构造方法，接收错误信息并传递给父类Exception
public class InvalidScoreExceptionExample extends Exception {
    public InvalidScoreExceptionExample(String message) {
        super(message);
    }
}

class ScoreValidationExample {

    // 静态方法checkScore用于检查分数是否合法
    public static void checkScore(int score) throws InvalidScoreExceptionExample {
        // 如果分数小于0或大于100，则抛出InvalidScoreException异常
        if (score < 0 || score > 100) {
            throw new InvalidScoreExceptionExample("分数必须在0到100之间。");
        } else {
            // 如果分数合法，则打印分数有效的信息
            System.out.println("分数有效。");
        }
    }

    public static void main(String[] args) {
        try {
            int userScore = 435; // 选择一个无效的分数来触发异常
            checkScore(userScore); // 调用checkScore方法检查用户输入的分数
        } catch (InvalidScoreExceptionExample e) {
            // 如果捕获到InvalidScoreException异常，则打印错误信息
            System.out.println("错误：" + e.getMessage());
        }
    }
}
